package com.ruoyi.comment.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.domain.entity.SyAppUsers;
import com.ruoyi.shiyun.domain.SyProduct;
import com.ruoyi.siyun.domain.SyCourse;
import com.ruoyi.siyun.domain.SyMicrocircle;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.TreeEntity;

/**
 * 评论对象 sy_comment
 *
 * @author ruoyi
 * @date 2024-12-31
 */
public class SyComment extends TreeEntity
{
    private static final long serialVersionUID = 1L;

    /** id */
    private String id;

    /** 1 微圈 2 课程  3 商品 */
    @Excel(name = "1 微圈 2 课程  3 商品")
    private String type;

    /** 回复人的UID */
    @Excel(name = "回复人的UID")
    private String userId;

    /** 回复时间戳 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "回复时间戳", width = 30, dateFormat = "yyyy-MM-dd")
    private Date replytime;

    /** 回复内容 */
    @Excel(name = "回复内容")
    private String content;

    /** 父节点评论 */
    @Excel(name = "父节点评论")
    private Long pid;

    /** 创建人 */
    @Excel(name = "创建人")
    private String cerateBy;

    /** 评论区ID */
    @Excel(name = "评论区ID")
    private Long commentId;

    private String avatar;

    public String getAvatar() {
        return avatar;
    }

    public void setAvatar(String avatar) {
        this.avatar = avatar;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    private String username;

    public SyCourse getSyCourse() {
        return syCourse;
    }

    public SyAppUsers getSyAppUsers() {
        return syAppUsers;
    }

    public void setSyCourse(SyCourse syCourse) {
        this.syCourse = syCourse;
    }

    public void setSyAppUsers(SyAppUsers syAppUsers) {
        this.syAppUsers = syAppUsers;
    }

    private SyCourse syCourse;

    private SyAppUsers syAppUsers;

    private SyMicrocircle syMicrocircle;

    public SyMicrocircle getSyMicrocircle() {
        return syMicrocircle;
    }

    public void setSyMicrocircle(SyMicrocircle syMicrocircle) {
        this.syMicrocircle = syMicrocircle;
    }

    public SyProduct getSyProduct() {
        return syProduct;
    }

    public void setSyProduct(SyProduct syProduct) {
        this.syProduct = syProduct;
    }

    private SyProduct syProduct;



    public void setId(String id)
    {
        this.id = id;
    }

    public String getId()
    {
        return id;
    }
    public void setType(String type)
    {
        this.type = type;
    }

    public String getType()
    {
        return type;
    }
    public void setUserId(String userId)
    {
        this.userId = userId;
    }

    public String getUserId()
    {
        return userId;
    }
    public void setReplytime(Date replytime)
    {
        this.replytime = replytime;
    }

    public Date getReplytime()
    {
        return replytime;
    }
    public void setContent(String content)
    {
        this.content = content;
    }

    public String getContent()
    {
        return content;
    }
    public void setPid(Long pid)
    {
        this.pid = pid;
    }

    public Long getPid()
    {
        return pid;
    }
    public void setCerateBy(String cerateBy)
    {
        this.cerateBy = cerateBy;
    }

    public String getCerateBy()
    {
        return cerateBy;
    }
    public void setCommentId(Long commentId)
    {
        this.commentId = commentId;
    }

    public Long getCommentId()
    {
        return commentId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("type", getType())
                .append("userId", getUserId())
                .append("replytime", getReplytime())
                .append("content", getContent())
                .append("pid", getPid())
                .append("cerateBy", getCerateBy())
                .append("updateBy", getUpdateBy())
                .append("createTime", getCreateTime())
                .append("updateTime", getUpdateTime())
                .append("commentId", getCommentId())
                .toString();
    }
}

